feat: asset caching, outdated check, and local installs#34
Merged
Conversation
d897650 to
88d0cd7
Compare
- Add asset caching to ~/.gitclaw/cache/ with automatic reuse - Add gitclaw cache clean and gitclaw cache size commands - Add gitclaw list --outdated to check for newer versions - Add --local flag for project-scoped installs to ./.gitclaw/ - Add sha2 dependency for cache integrity
b025cf5 to
9987661
Compare
- tests/cache.rs: 19 tests for cache key, hash, store, get, clean, size - tests/outdated.rs: 5 tests for version comparison logic - tests/local.rs: 5 tests for local install dir structure and registry isolation - Export cache module from lib.rs for test access
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
User Experience
Asset Caching
~/.gitclaw/cache/, reused on subsequent installsgitclaw cache clean— remove all cached archivesgitclaw cache size— show total cache size on disk<owner>_<repo>_<version>_<filename>Outdated Check
gitclaw list --outdatedcompares installed versions against latest GitHub releasesLocal Installs
gitclaw install --local user/repoinstalls to./.gitclaw/in current directory./.gitclaw/registry.toml) from globalgitclaw uninstall --local pkgremoves from local scope./.gitclaw/cache/Tests
tests/cache.rs: 19 tests for cache key, hash, store, get, clean, size, roundtriptests/outdated.rs: 5 tests for version comparison logictests/local.rs: 5 tests for local install dir structure and registry isolationChecklist
cargo clippy -- -D warningscleancargo fmtclean